
mod very_bind;
mod byte_operator;
mod char_operator;

use crate::char_operator::{bool_operator, ret_unit_type, str_operator};
use crate::byte_operator::{byte_mut, byte_range, rational_number};
use crate::very_bind::data_type::{com_operator, com_operator_list};

/**
 * 入口函数
*/
fn main() {
    println!("Hello, world!");

    very_bind::variables();
    very_bind::destructuring();
    /**
     * Rust 允许声明相同的变量名，在后面声明的变量会遮蔽掉前面声明的
     */
    very_bind::same_variable_name();

    /**
     * Rust 支持所有数字类型的基本数学运算：加法、减法、乘法、除法和取模运算。
     */
    com_operator();

    /**
     * Rust 提供的所有运算符的列表
     */
    com_operator_list();

    /**
     * 位运算
     */
    byte_mut();
    /**
     * 序列值 循环
     */
    byte_range();
    /**
     * 有理数 ：
     */
    rational_number();

    /**
     *  字符串操作
     */
    str_operator();

    /**
     * Bool 值
     * Rust 中的布尔类型有两个可能的值：true 和 false，布尔值占用内存的大小为 1 个字节
     */
    bool_operator();
    /**
     * 表达式会进行求值，然后返回一个值。
     */
    let x = ret_unit_type();
    println!("{:?}", x);
    println!("111={:?}", x);
}

